package com.my.stock.core;

import com.fasterxml.jackson.annotation.JsonIgnore;

public class Product {
	@JsonIgnore
	private KlineProcess kline = new KlineProcess();

	public KlineProcess getKline() {
		return kline;
	}

	public void setKline(KlineProcess kline) {
		this.kline = kline;
	}

	private double distance;

	public double getDistance() {
		return distance;
	}

	public void setDistance(double distance) {
		this.distance = distance;
	}

	private boolean mainProduct;
	private String tradingProduct;
	private String callOption;
	private String putOption;
	private double ma20;

	private double lastPrice;

	public double getLastPrice() {
		return lastPrice;
	}

	public void setLastPrice(double lastPrice) {
		this.lastPrice = lastPrice;
	}

	public double getMa20() {
		return ma20;
	}

	public void setMa20(double ma20) {
		this.ma20 = ma20;
	}

	private int todayTrading;

	public boolean isMainProduct() {
		return mainProduct;
	}

	public void setMainProduct(boolean mainProduct) {
		this.mainProduct = mainProduct;
	}

	public int getTodayTrading() {
		return todayTrading;
	}

	public void setTodayTrading(int todayTrading) {
		this.todayTrading = todayTrading;
	}

	public String getTradingProduct() {
		return tradingProduct;
	}

	public void setTradingProduct(String tradingProduct) {
		this.tradingProduct = tradingProduct;
	}

	public String getCallOption() {
		return callOption;
	}

	public void setCallOption(String callOption) {
		this.callOption = callOption;
	}

	public String getPutOption() {
		return putOption;
	}

	public void setPutOption(String putOption) {
		this.putOption = putOption;
	}

	public double getAtr() {
		return atr;
	}

	public void setAtr(double atr) {
		this.atr = atr;
	}

	private double atr;
	private double openBuyPrice;
	private double openSellPrice;
	private boolean firstTick;

	private double lastBuyPrice;
	private double lastSellPrice;

	private double lastlPrice;

	private double lastBuyVolum;
	private double lastSellVolum;

	private double lastTurnover;
	private double lastVolume;

	private double lastAveragePrice;

	private double lastTotalPrice;

	private double totalBuyVolume;
	private double totalSellVolume;

	private double triggerVolume;

	private String from;

	private int triggerNeed;

	private int stopMovingCount;

	private double stopMovingVolume;

	private int stopMovingNeed;

	private boolean onPosition;

	private double highestPrice;

	private double lowestPrice;

	public String getFrom() {
		return from;
	}

	public void setFrom(String from) {
		this.from = from;
	}

	public double getHighestPrice() {
		return highestPrice;
	}

	public void setHighestPrice(double highestPrice) {
		this.highestPrice = highestPrice;
	}

	public double getLowestPrice() {
		return lowestPrice;
	}

	public void setLowestPrice(double lowestPrice) {
		this.lowestPrice = lowestPrice;
	}

	public boolean isOnPosition() {
		return onPosition;
	}

	public void setOnPosition(boolean onPosition) {
		this.onPosition = onPosition;
	}

	public int getStopMovingNeed() {
		return stopMovingNeed;
	}

	public void setStopMovingNeed(int stopMovingNeed) {
		this.stopMovingNeed = stopMovingNeed;
	}

	public double getStopMovingVolume() {
		return stopMovingVolume;
	}

	public void setStopMovingVolume(double stopMovingVolume) {
		this.stopMovingVolume = stopMovingVolume;
	}

	public int getStopMovingCount() {
		return stopMovingCount;
	}

	public void setStopMovingCount(int stopMovingCount) {
		this.stopMovingCount = stopMovingCount;
	}

	public int getTriggerNeed() {
		return triggerNeed;
	}

	public void setTriggerNeed(int triggerNeed) {
		this.triggerNeed = triggerNeed;
	}

	public double getTriggerVolume() {
		return triggerVolume;
	}

	public void setTriggerVolume(double triggerVolume) {
		this.triggerVolume = triggerVolume;
	}

	@JsonIgnore
	private TimelineUtil buyTU = new TimelineUtil();
	@JsonIgnore
	private TimelineUtil sellTU = new TimelineUtil();

	private int triggerCount = 0;

	public int getTriggerCount() {
		return triggerCount;
	}

	public void setTriggerCount(int triggerCount) {
		this.triggerCount = triggerCount;
	}

	public double getLastlPrice() {
		return lastlPrice;
	}

	public void setLastlPrice(double lastlPrice) {
		this.lastlPrice = lastlPrice;
	}

	public TimelineUtil getBuyTU() {
		return buyTU;
	}

	public void setBuyTU(TimelineUtil buyTU) {
		this.buyTU = buyTU;
	}

	public TimelineUtil getSellTU() {
		return sellTU;
	}

	public void setSellTU(TimelineUtil sellTU) {
		this.sellTU = sellTU;
	}

	public double getTotalBuyVolume() {
		return totalBuyVolume;
	}

	public void setTotalBuyVolume(double totalBuyVolume) {
		this.totalBuyVolume = totalBuyVolume;
	}

	public double getTotalSellVolume() {
		return totalSellVolume;
	}

	public void setTotalSellVolume(double totalSellVolume) {
		this.totalSellVolume = totalSellVolume;
	}

	public double getLastTotalPrice() {
		return lastTotalPrice;
	}

	public void setLastTotalPrice(double lastTotalPrice) {
		this.lastTotalPrice = lastTotalPrice;
	}

	public double getLastAveragePrice() {
		return lastAveragePrice;
	}

	public void setLastAveragePrice(double lastAveragePrice) {
		this.lastAveragePrice = lastAveragePrice;
	}

	public double getLastTurnover() {
		return lastTurnover;
	}

	public void setLastTurnover(double lastTurnover) {
		this.lastTurnover = lastTurnover;
	}

	public double getLastVolume() {
		return lastVolume;
	}

	public void setLastVolume(double lastVolume) {
		this.lastVolume = lastVolume;
	}

	public double getLastBuyVolum() {
		return lastBuyVolum;
	}

	public void setLastBuyVolum(double lastBuyVolum) {
		this.lastBuyVolum = lastBuyVolum;
	}

	public double getLastSellVolum() {
		return lastSellVolum;
	}

	public void setLastSellVolum(double lastSellVolum) {
		this.lastSellVolum = lastSellVolum;
	}

	public double getLastBuyPrice() {
		return lastBuyPrice;
	}

	public void setLastBuyPrice(double lastBuyPrice) {
		this.lastBuyPrice = lastBuyPrice;
	}

	public double getLastSellPrice() {
		return lastSellPrice;
	}

	public void setLastSellPrice(double lastSellPrice) {
		this.lastSellPrice = lastSellPrice;
	}

	public boolean isFirstTick() {
		return firstTick;
	}

	public void setFirstTick(boolean firstTick) {
		this.firstTick = firstTick;
	}

	public double getOpenBuyPrice() {
		return openBuyPrice;
	}

	public void setOpenBuyPrice(double openBuyPrice) {
		this.openBuyPrice = openBuyPrice;
	}

	public double getOpenSellPrice() {
		return openSellPrice;
	}

	public void setOpenSellPrice(double openSellPrice) {
		this.openSellPrice = openSellPrice;
	}

	private String code;
	private String contractName;

	private int maxOrderNum;

	private int ownPosition;
	private String tradeType;

	private long closeOrderTime;
	private double minStep;

	private String ExchangeID;
	private String ParkedOrderID;

	private String strategy;

	private int stopLossStep;

	private boolean done;

	public boolean isDone() {
		return done;
	}

	public void setDone(boolean done) {
		this.done = done;
	}

	public int getStopLossStep() {
		return stopLossStep;
	}

	public void setStopLossStep(int stopLossStep) {
		this.stopLossStep = stopLossStep;
	}

	public String getStrategy() {
		return strategy;
	}

	public void setStrategy(String strategy) {
		this.strategy = strategy;
	}

	private int poolInsertOrderNum;

	private int poolStopOrderNum;

	public int getPoolInsertOrderNum() {
		return poolInsertOrderNum;
	}

	public void setPoolInsertOrderNum(int poolInsertOrderNum) {
		this.poolInsertOrderNum = poolInsertOrderNum;
	}

	public int getPoolStopOrderNum() {
		return poolStopOrderNum;
	}

	public void setPoolStopOrderNum(int poolStopOrderNum) {
		this.poolStopOrderNum = poolStopOrderNum;
	}

	public double getUnit() {
		return unit;
	}

	public void setUnit(double unit) {
		this.unit = unit;
	}

	private String InstrumentID;

	private String insertOrderRef;
	private String stopOrderRef;

	private double orderPrice;

	private double poolOrderPrice;

	public double getPoolOrderPrice() {
		return poolOrderPrice;
	}

	public void setPoolOrderPrice(double poolOrderPrice) {
		this.poolOrderPrice = poolOrderPrice;
	}

	private double stopLossPrice;

	private double unit;

	public double getStopLossPrice() {
		return stopLossPrice;
	}

	public void setStopLossPrice(double stopLossPrice) {
		this.stopLossPrice = stopLossPrice;
	}

	private long orderTime;

	public long getOrderTime() {
		return orderTime;
	}

	public void setOrderTime(long orderTime) {
		this.orderTime = orderTime;
	}

	public double getOrderPrice() {
		return orderPrice;
	}

	public void setOrderPrice(double orderPrice) {
		this.orderPrice = orderPrice;
	}

	public String getInsertOrderRef() {
		return insertOrderRef;
	}

	public void setInsertOrderRef(String insertOrderRef) {
		this.insertOrderRef = insertOrderRef;
	}

	public String getStopOrderRef() {
		return stopOrderRef;
	}

	public void setStopOrderRef(String stopOrderRef) {
		this.stopOrderRef = stopOrderRef;
	}

	public int getOwnPosition() {
		return ownPosition;
	}

	public void setOwnPosition(int ownPosition) {
		this.ownPosition = ownPosition;
	}

	public String getExchangeID() {
		return ExchangeID;
	}

	public void setExchangeID(String exchangeID) {
		ExchangeID = exchangeID;
	}

	public String getParkedOrderID() {
		return ParkedOrderID;
	}

	public void setParkedOrderID(String parkedOrderID) {
		ParkedOrderID = parkedOrderID;
	}

	public String getInstrumentID() {
		return InstrumentID;
	}

	public void setInstrumentID(String instrumentID) {
		InstrumentID = instrumentID;
	}

	public double getMinStep() {
		return minStep;
	}

	public void setMinStep(double minStep) {
		this.minStep = minStep;
	}

	public String getContractName() {
		return contractName;
	}

	public void setContractName(String contractName) {
		this.contractName = contractName;
	}

	public String getCode() {
		return code;
	}

	public void setCode(String code) {
		this.code = code;
	}

	public int getMaxOrderNum() {
		return maxOrderNum;
	}

	public void setMaxOrderNum(int maxOrderNum) {
		this.maxOrderNum = maxOrderNum;
	}

	public String getTradeType() {
		return tradeType;
	}

	public void setTradeType(String tradeType) {
		this.tradeType = tradeType;
	}

	public long getCloseOrderTime() {
		return closeOrderTime;
	}

	public void setCloseOrderTime(long closeOrderTime) {
		this.closeOrderTime = closeOrderTime;
	}

}
